約 3,265,176 件
https://w.atwiki.jp/passgetter/pages/18.html
Excelファイル保護解除 パスゲッターOffice Editionでは、Excelファイルの保護パスワードを解析することができます。 このようにExcelファイルがパスワードロックされている場合に、パスワードを解析します。 パスゲッター(Excel)を起動し、基本設定でWordファイルを指定し、スタートアイコンをクリックします。 パスワード解析完了後、パスワードが表示されます。
https://w.atwiki.jp/pc-help/pages/16.html
Excelシート参照 別ブック(別ファイル)のシート参照ですが ファイル開いて、参照モードにして選択すればよいだけですが あえて関数に式を入れたい場合 ブック名シート名! セル シングルクォーテーションで囲えばよいです。
https://w.atwiki.jp/wiki11_mpl/pages/343.html
トップページ>onepiece>ネック切り替えワンピース NO.O0719 ネック切り替えワンピース http //www.m-pattern.com/catalog/onepiece/no.O0719.html おすすめの生地 おすすめの用途 このアイテムについてコメントしたい方で、wikiの編集が不安な方は、以下の コメントフォームからどうぞ。 ネック切り替えワンピ 薄くて柔らかいオサレな柄ものの綿ローンで作りました。 9号針で縫いました。家庭用ミシンなので薄地はつれそうになって 大変でしたが頑張った。かわいくできたよ。 職業用ミシンだともっと縫いやすいんだろうか。 ハイウエストワンピは買ってない。 ネック切り替えとハイウエストブラウスは買いました。 ネック切り替えのほうが、胸デカや上半身デブ(私のこと)向けです。 ハイウエストブラウスは、オススメサイズより1号上を買ったのに 肩幅や腕のあたりがキツかったんです。 ネック切り替えはオススメサイズでも着心地ラクラクで 気のせいかもしれませんが、目の錯覚で着やせしてみえるように思いました。ネック切り替えワンピースは、 Vネック開きのところに、取り外し可能の三角の当て布をつけてもイイよ。 --スレ21-513・518 (2007-06-19 16 11 17) 名前 コメント このアイテムを作ってみての難易度はどうでしたか? 選択肢 投票 難しいので初心者には無理! (0) 難しいけれどがんばればなんとか (0) 意外と簡単 (0) 初心者にもおすすめ! (0)
https://w.atwiki.jp/ohden/pages/395.html
Excel Excel 2007 Excel 2010 Excel for Office365 ※主にExcel for Office365を利用。 ~tools~ RelaxTools Application/Excel/tools/ ~tips~ Excel関数だけでフルパスからファイル名を取り出す Excelで日付を扱いたい Excelで時間を扱いたい オートシェイプの中の文字を検索したい 相対指定で任意のセルの値を取得したい 当該シートのシート名を取得したい VLOOKUPで正しい値を入力してもN/Aが表示される Wordの表をExcelにcopyしたい xls fileを開くだけで構成管理上で差分が発生する シート名一覧の取得 シーケンシャルな値(ID)を自動で採番したい 複数条件分岐の書き方 コンテキストメニューが出ない ※未解決 Application/Excel/tips/ ~memo~ 日付フォーマットで曜日を漢字で出力したい 元日付 書式 変換後 2011/11/11 yyyy"年"mm"月"dd"日("aaa")" 2011年11月11日(金) 更新日: 2021年10月13日 (水) 10時54分34秒 Excel-DNAとCSを使ってExcelの機能を追加できる Excel-DNAを使って関数を作る Excel-DNAを使ってC-Sharpで関数を作る Excel-DNAを使ってC-Sharpで作った関数をDLL化する -- (s1n) 2018-08-23 09 31 03 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/coraljapan/pages/32.html
2010年07月28日 (水) 10時07分59秒; EXCEL覚え書き EXCEL覚え書きクリックしたセルの色を変更する スクロール位置を先頭に戻す 印刷範囲を可変設定にする 相対パスで指定する ボタンの行位置を知る 自分自身を削除する。 フォルダ内のexcelファイルを検索する(サブフォルダも検索) セルがエラーかどうか調べる ユーザーフォームの表示位置を画面サイズの右側にする 定期的にマクロを実行する ファイルダイアログでファイル名を取得する 指定の表示形式を返す ファイルがあるかどうかチェックする 入力規則である条件では入力できないようにする 処理中にWAITを入れる VBAでファイルコピー、移動 VBAでホームページを開く ユーザーフォームのTextBox1にセットする ユーザーフォームと変数をやり取りする 他のブックのマクロを実行する 既存のブックをコピーする ブックを読み取り専用で開く 別のブックのセルの値を取得する(ユーザフォーム) アクティブなブックを閉じる ブックをアクティブにする ブックを保存する ブックを別名で保存する 他のブックのシートのセルの値を取得(リンク方式) 他のブックのシートのセルの値を取得 開いているブックを見えなくする 指定したブックが開いているか調べる エクセルを終了する 条件が一致したときのみ、コントロールを表示する ユーザーフォームにコンボボックスを作成する 乱数を発生させるマクロ ユーザーフォーム出現位置を設定する 覚えておくと便利なショートカットキーのこと CALL ステートメントと、引数 2つのテキストファイルの比較 テキストファイルの内容をセルに読み込む マクロ 文字列をテキストファイルへ書き出す マクロ 処理実行中のカーソルを砂時計にする セルの値を簡易棒グラフで表示する エクセルで早口言葉? ユーザーフォームのテキストボックス内での制御プロパティ ユーザーフォームのテキストボックス内で改行する。 Format関数 ユーザーフォームをモードレスで表示する ユーザーフォームで簡易プログレスバーをつくる。 DATEVALUE関数とTIMEVALUE関数 YEAR関数 実行中のマクロを強制終了する。 他のシートのセルの内容を取得する マクロ シートがアクティブになったら、指定したマクロを実行する。 曜日まで表示する表示形式設定 シート名一覧を取得するマクロ その2 データの最終行を知る マクロ フォルダのコピー マクロ 文字列の操作 選択したフォルダ内のファイル一覧を取得するマクロ ブックの共有操作のマクロ メッセージボックスのアイコン セル範囲指定で絶対的な座標で指定する メッセージボックスで改行する ステータスバーに表示するマクロ 実行中の自動計算をオフにするマクロ 実行中の画面の更新を無効にする 指定した文字列が含まれる行以外を削除するマクロ 24時間を越える場合のマクロでの記述 アクティブシートの名前を変更するマクロ アクティブブックのシートをコピーするマクロ ワークシートを別のBOOKへ保存するマクロ 「はい」「いいえ」ダイアログを表示するマクロ 複数条件のカウント SUMPRODUCT関数 その2 複数条件のカウント SUMPRODUCT関数 シリアル値から日付データ「年」「月」「日」を取り出す 範囲内の最大値、最小値を求める BOOKを開いたら、マクロを自動で実行する ラベルへジャンプするマクロ アクティブセルの位置を調べるマクロ シートをアクティブにするマクロ ワークブックを開くマクロ アクティブセルの内容を取得するマクロ 指定したセルに値を代入するマクロ 指定範囲内のセルに値を代入するマクロ シート名の一覧を表示するマクロ セルにアクティブシート名を表示する 重複データを削除する 条件にあったものの合計 クリックした図形のセルの色を変えるマクロ セルに時間を記録するマクロ =COUNTIF関数 条件付書式 IF関数 セルのコピー&貼り付け セル内の文字列をリスト形式で選択 クリックしたセルの色を変更する (シート内のModuleに) Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) ActiveSheet.Rows.Interior.ColorIndex = xlNone Rows(Target.Row).Interior.ColorIndex = 15 End Sub (指定した行のみ動作させる) Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) If ActiveCell.Row 4 Then Exit Sub ActiveSheet.Rows("4 104").Interior.ColorIndex = xlNone Rows(Target.Row).Interior.ColorIndex = 15 End Sub スクロール位置を先頭に戻す ActiveWindow.ScrollColumn = 1 ActiveWindow.ScrollRow = 1 印刷範囲を可変設定にする 1.メニュー>挿入>名前>定義>を選択する。 2.名前定義ダイアログで、Print_Areaを選択する。 3.参照範囲に「=OFFSET($A$1,0,0,COUNTA($A $A),100)」を入力する。 A列のデータ行の数によって、印刷範囲が可変する。 【OFFSET関数】OFFSET(基準, 行数, 列数, 高さ, 幅) 相対パスで指定する 変数 = ThisWorkbook.Path Workbooks.Open (変数 "\..\test.xls") ボタンの行位置を知る bt = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row 自分自身を削除する。 Sub test() With ThisWorkbook .Save .ChangeFileAccess Mode =xlReadOnly Kill .FullName .Close (False) End With End Sub フォルダ内のexcelファイルを検索する(サブフォルダも検索) Sub test() フォルダを検索してxlsファイル特定する Dim f, buf As String, cnt As Long, FSO Set FSO = CreateObject("Scripting.FileSystemObject") With Application.FileSearch .NewSearch .Filename = "*.xls" ファイル名 .LookIn = "D \data" フォルダ名 .SearchSubFolders = True サブフォルダも検索する If .Execute() 0 Then For Each f In .FoundFiles path_name = FSO.GetFile(f).ParentFolder パス file_name = FSO.GetFile(f).Name ファイル名 MsgBox path_name "\" file_name Next f End If End With Set FSO = Nothing End Sub セルがエラーかどうか調べる Set rg = Range("A1") If Application.WorksheetFunction.IsError(rg) Then 処理 End If ユーザーフォームの表示位置を画面サイズの右側にする Private Sub UserForm_Activate() Me.Left = Application.Left + Application.Width - Me.Width Me.Top = Application.Top + (Application.Height - Me.Height) / 2 End Sub 定期的にマクロを実行する 1秒ごとにA1に現在時刻を表示 OnTime開始 Sub timer_start() Application.OnTime Now + TimeValue("00 00 01"), "timer_start" Range("A1") = Now() End Sub OnTimeキャンセル Sub timer_stop() On Error Resume Next Application.OnTime Now + TimeValue("00 00 01"), "timer_start", schedule =False End Sub 10秒ごとに10回先まで予約 Sub test() For i = 1 To 10 Application.OnTime Now + TimeValue("00 00 10") * i, "my_Procedure" Next i End Sub Sub my_Procedure() MsgBox "きたー" End Sub ファイルダイアログでファイル名を取得する fname = Application.GetOpenFilename( _ Title ="取り込みファイルの選択") If fname = False Then Exit Sub Msgbox fname End If 指定の表示形式を返す Format(Now(), "yymmdd") ファイルがあるかどうかチェックする Sub filechk strWrk= ここにパス記入 strFile=ここはファイル名 If Dir(strWrk strFil) = "" Then MsgBox("ファイルありません") End If End Sub 入力規則である条件では入力できないようにする A1がバナナか、リンゴか、みかんのときで、なおかつ、B1が食べる以外のときは入力できないようにする。 データの入力規則で、 設定をユーザ定義 数式に、 =OR(AND(A1 "バナナ",A1 "リンゴ",A1 "みかん"),B1="食べる") 処理中にWAITを入れる Application.Wait [NOW()+"0 00 00.01"] 1/100秒停止 VBAでファイルコピー、移動 ファイルコピー Option Explicit Private Const cnsSOUR = "C \AAA\SAMPLE1.txt" 元ファイル Private Const cnsDEST = "C \BBB\SAMPLE2.txt" 先ファイル ファイルコピーのサンプル Sub COPY_SAMPLE() ファイルをコピー FileCopy cnsSOUR, cnsDEST End Sub パスを含めた名前で指定する。 ファイル移動(コピーして元ファイル削除) Option Explicit Private Const cnsSOUR = "C \AAA\SAMPLE1.txt" 元ファイル Private Const cnsDEST = "C \BBB\SAMPLE2.txt" 先ファイル ファイル移動のサンプル② Sub MOVE_SAMPLE2() ファイルをコピー FileCopy cnsSOUR, cnsDEST 元ファイルを削除 Kill cnsSOUR End Sub VBAでホームページを開く Sub Sample() Shell "EXPLORER.EXE http //google.co.jp/" End Sub ユーザーフォームのTextBox1にセットする UserForm1.TextBox1 = "てきすと" ユーザーフォームと変数をやり取りする 標準モジュールの先頭に、呼出し元のプロシージャとユーザフォームで共用したい変数名をPublicでセットします。 Public aaa, bbb Sub test() aaa = 3000 UserForm1.Show vbModeless MsgBox bbb End Sub Private Sub UserForm_Initialize() TextBox1.Text = aaa bbb = 500 End Sub 他のブックのマクロを実行する Application.Run "book1.xls!test" ※引数を渡す場合は、 Application.Run " book1.xls !test",aaa,bbb 例) 元ブック Workbooks.Open Filename =("sample.xls") hiki1 = "りんご" hiki2 = "おいしい" Application.Run "sample.xls!ringo", hiki1, hiki2 先ブック Sub ringo(hiki1, hiki2) With UserForm1 .TextBox1 = hiki1 .TextBox2 = hiki2 .Show End With End Sub 既存のブックをコピーする Sub bkcopy() wp = ThisWorkbook.Path Workbooks.Open Filename =(wp "\aaaa.xlsx"), ReadOnly =True Application.DisplayAlerts = False Workbooks("aaaa.xlsx").Activate ActiveWorkbook.SaveAs Filename =wp "\bbbb.xls" Application.DisplayAlerts = True ActiveWorkbook.Close End Sub ブックを読み取り専用で開く Workbooks.Open Filename =("BBB.xls"), ReadOnly =True 別のブックのセルの値を取得する(ユーザフォーム) Private Sub UserForm_Initialize() wp = ThisWorkbook.Path Workbooks.Open Filename =(wp + "\aaaa"), ReadOnly =True with Workbooks("aaaa.xlsx") msg = .Sheets(1).Range("a1") .Windows(1).Visible = True .Close End with TextBox1 = msg End Sub アクティブなブックを閉じる ActiveWorkbook.Close ブックをアクティブにする Workbooks("sample.xls).Activate ブックを保存する ActiveWorkbook.Save ブックを別名で保存する ActiveWorkbook.SaveAs "Sample.xls" 他のブックのシートのセルの値を取得(リンク方式) Range("a1") = "= " "c \" "[" "サンプル.xls" "]シート1 !" Range("a1") 他のブックのシートのセルの値を取得 Workbooks.Open Filename =("サンプル.xls"), ReadOnly =True Range("a1") = Workbooks("サンプル.xls").Sheets(1).Range("a1") ActiveWorkbook.Close 開いているブックを見えなくする Workbooks("aaaa.xlsx").Windows(1).Visible = False 指定したブックが開いているか調べる Sub Sample15() Dim wb As Workbook, flag As Boolean For Each wb In Workbooks If wb.Name = "Book1.xls" Then flag = True Next wb If flag = True Then MsgBox "開いています。" Else MsgBox "開いていません。" End If End Sub エクセルを終了する Application.Quit 条件が一致したときのみ、コントロールを表示する 例)ComboBox1が"あり"に選択のとき、ComboBox2を表示 Private Sub ComboBox1_Change() If ComboBox1 = "あり" Then ComboBox2.Visible = True Exit Sub End If End Sub ユーザーフォームにコンボボックスを作成する 1.ユーザーフォームにツールボックスからコンボボックスを作成する。 2.Initialize()にコンボボックスの文字列を羅列する。 Private Sub UserForm_Initialize() With ComboBox1 .AddItem "リスト1" .AddItem "リスト2" .AddItem "リスト3" .AddItem "リスト4" End With End Sub 乱数を発生させるマクロ Randomize rnd1 = Int(Rnd * 99999999 + 1) ※99999999は0~99999999の乱数 ユーザーフォーム出現位置を設定する Private Sub UserForm_Initialize() Me.StartUpPosition = 0 Me.Left = 20 Me.Top = 10 End Sub 覚えておくと便利なショートカットキーのこと その1 現在日付を入力 〔CTRL〕+〔;〕 その2 現在時刻を入力 〔CTRL〕+〔:〕 その3 関数の引数を表示 〔CTRL〕+〔SHIFT〕+〔A〕 たとえば、数式バーに=IFと入力してから、〔CTRL〕+〔SHIFT〕+〔A〕と押すと、=IF(論理式,真の場合,偽の場合)と表示される。 その4 書式のみのコピペ 〔CTRL〕+〔SHIFT〕+〔C〕書式のみコピー 〔CTRL〕+〔SHIFT〕+〔V〕書式のみペースト CALL ステートメントと、引数 他のマクロを呼び出すときに、変数を受け渡す場合は、以下を参考。 Sub test() Call メッセージ表示("あははは") End Sub Sub メッセージ表示(moji) MsgBox moji End Sub 複数受け渡す場合は、カンマで区切って列挙する。 Sub test() Call メッセージ表示("あははは", "いひひひ", "うふふふ") End Sub Sub メッセージ表示(moji1, moji2, moji3) MsgBox moji1 MsgBox moji2 MsgBox moji3 End Sub 2つのテキストファイルの比較 A.txtとB.txtを行ごとに比較します。 Sub 比較() Dim strREC_A As String Dim strREC_B As String Dim File_A As String Dim File_B As String Dim ForderPass As String Dim CT As Long ForderPass = ThisWorkbook.Path File_A = "\A.txt" File_B = "\B.txt" Open ForderPass File_A For Input As #1 Open ForderPass File_B For Input As #2 CT = 1 st If EOF(1) Or EOF(2) Then GoTo owari End If Line Input #1, strREC_A Line Input #2, strREC_B If strREC_A strREC_B Then MsgBox CT "行目 違う。" vbCrLf strREC_A vbCrLf strREC_B End If CT = CT + 1 GoTo st owari Close #1 Close #2 MsgBox "終了。" End Sub テキストファイルの内容をセルに読み込む マクロ Sub READ_TextFile() Const cnsFILENAME = "\sample.txt" Dim intFF As Integer FreeFile値 Dim strREC As String 読み込んだレコード内容 Dim GYO As Long 収容するセルの行 FreeFile値の取得(以降この値で入出力する) intFF = FreeFile 指定ファイルをOPEN(入力モード) Open ThisWorkbook.Path cnsFILENAME For Input As #intFF GYO = 1 ファイルのEOF(End of File)まで繰り返す Do Until EOF(intFF) 改行までをレコードとして読み込む Line Input #intFF, strREC 行を加算しA列にレコード内容を表示(先頭は2行目) Cells(GYO, 1).Value = strREC GYO = GYO + 1 Loop 指定ファイルをCLOSE Close #intFF End Sub 文字列をテキストファイルへ書き出す マクロ Sub WRITE_TextFile() Const cnsFILENAME = "\SAMPLE.txt" Dim intFF As Integer FreeFile値 Dim strREC As String 書き出すレコード内容 FreeFile値の取得(以降この値で入出力する) intFF = FreeFile 指定ファイルをOPEN(出力モード) Open ThisWorkbook.Path cnsFILENAME For Output As #intFF 内容をレコードにセット strREC = "test" レコードを出力 Print #intFF, strREC 指定ファイルをCLOSE Close #intFF End Sub 処理実行中のカーソルを砂時計にする Application.Cursor = xlWait 元に戻すには、 Application.Cursor = xlDefault セルの値を簡易棒グラフで表示する 以下の様な表示。 A列にパーセンテージを入力。 B列に■で棒グラフが作成される。 B列の関数 =LEFT("■■■■■■■■■■",TRUNC($A1/0.1)) ※条件書式で、100%を赤く設定してあります。 エクセルで早口言葉? くだらなすぎ。(自爆) http //www29.atwiki.jp/coraljapan/?cmd=upload act=open page=EXCEL%E8%A6%9A%E3%81%88%E6%9B%B8%E3%81%8D file=20080217_hayakuchi.xls ユーザーフォームのテキストボックス内での制御プロパティ SelLength 選択されたテキストの文字数を設定します。 値の取得も可能です。 SelStart 選択されたテキストの開始点を設定します。 値の取得も可能です。テキストが選択されていないときは、 挿入ポインタの位置を示します。 SelText 現在選択されているテキストを含む文字列を設定します。 値の取得も可能です。文字が選択されていないときは、長さ 0 の文字列 ("") を返します。 例)TextBox1.SelStart = 0 カーソル位置を先頭にします。 ユーザーフォームのテキストボックス内で改行する。 EnterKeyBehaviorをTrueに設定します。 MultiLineもTrueに設定しておく必要があります。 Format関数 Format([値],"[書式設定]") 以下は書式設定 カンマ区切り : #,##0 : 1,234 ¥マーク入り : \\#,##0 : \1,234 単位付き : #,##0\円 : 1,234円 小数点桁数の指定 : #,##0,0000 : 1,234.5670 小数点桁数の指定2 : #,##0,0### : 1,234.567 日付の書式 : YYYY/MM/DD HH NN SS : 2002/11/28 10 18 30 YYYYMMDDをYYYY/MM/DD : @@@@/@@/@@ : 20021128- 2002/11/28 西暦を和暦 : GGGEE\年MM\月DD\日 : 2002/11/28- 平成14年11月28日 和暦を西暦 : YYYY\年MM\月DD\日 : 平成14年11月28日- 2002年11月28日 数値を曜日 : AAAA : 1- 日曜日 四半期を返す : Q : 2002/01- 1 郵便番号 : @@@-@@@@ : 2510871- 251-0871 左に0を充填 : 00000 : 123- 00123 左に半角スペースを充填 : @@@@@ : 123- 123 全部大文字 : : abc- ABC 全部小文字 : : ABC- abc 曜日:aaa:2003/01/30 - 木 カンマ区切りで0なら表示しない #,### 1234- 1,234 0- (表示しない) ユーザーフォームをモードレスで表示する UserForm1.Show vbModeless vbModelessをつけると、ユーザーフォームを表示しながら、セルの選択などができます。 ユーザーフォームで簡易プログレスバーをつくる。 1.Visual Basic Editerを開く。Alt+11 2.メニューの挿入→ユーザーフォームを選択して、フォームを新規作成する。 3.ツールボックスの、「ラベル」で以下のようにラベルを2つと、「コマンドボタン」でボタンを一つ作成する。 4.作成したコマンドボタン上で右ボタンを押して、プロパティを表示して、Captionを「OK」に変更する。 5.ユーザーフォームを選択した状態で、F7を押して、コードを表示する。 6.表示されているコードをすべて削除して、以下のコードを入力する。 Private Sub UserForm_Activate() Label2 = "作業中です..." lb = "■" For i = 0 To 100 Label1 = lb DoEvents lb = lb + "■" ここから処理 For w = 1 To 10000 For x = 1 To 100 Next x Next w ここまで処理 Next i CommandButton1.Enabled = True Label2 = "完了しました。" End Sub Private Sub CommandButton1_Click() Unload Me End Sub 7.Visual Basic Editerを閉じる。 8.新規マクロに以下を入力する。 Sub プログレス() UserForm1.Show End Sub 9.マクロ「プログレス」を実行する。 完成データ DATEVALUE関数とTIMEVALUE関数 指定された文字列からシリアル値を求めるものです。 例) TIMEVALUE("6 0 0") DATEVALUE("2008/2/14") YEAR関数 指定した日付の年を返します。 例)YEAR(Now()) 実行中のマクロを強制終了する。 Dos/V機 [CTRL]+[Break(Pause)] PC9800シリーズ [CTRL]+[STOP] 他のシートのセルの内容を取得する マクロ aaa=Worksheets("Sheet1").Range("A1") シートがアクティブになったら、指定したマクロを実行する。 Sub Auto_Open() Sheet1がアクティブになったら「Macro1」マクロ実行 Worksheets("Sheet1").OnSheetActivate = "Macro1" End Sub 曜日まで表示する表示形式設定 yyyy"年"m"月"d"日("aaa")" シート名一覧を取得するマクロ その2 Sub シート一覧() ct = 1 For I = 1 To Sheets.Count shname = Sheets(I).Name Cells(ct, 1) = shname ct = ct + 1 Next End Sub データの最終行を知る マクロ er = Range("A" 65536).End(xlUp).Row フォルダのコピー マクロ c \001の内容を%temp%\書庫へコピーします。 Sub FolderCopy() Dim SourcFolderSpec, DestFolderSpec, TempFolder As String Dim SourcFolder_Object, DestFolder_Object As Object Dim FileNamePath As Variant 環境変数TEMP を取得します TempFolder = Environ("temp") Source Folder をセットします SourcFolderSpec = "c \001" Destination Folder をセットします DestFolderSpec = TempFolder "\書庫" フォルダオブジェクトを取得 Set SourcFolder_Object = CreateObject _ ("Scripting.FileSystemObject").GetFolder(SourcFolderSpec) SourcFolderSpec内の全ファイルをDestFolderSpecにコピー サブフォルダも対象になります SourcFolder_Object.Copy DestFolderSpec MsgBox "完了しました" End Sub 文字列の操作 =LEFT(文字列,[文字数]) :文字列の左端から指定した文字数だけ取り出す。 文字数を省略すると1を指定したことになります(1の時は省略できる)。 =RIGHT(文字列,[文字数]) :文字列の右端から指定した文字数だけ取り出す。 文字数を省略すると1を指定したことになります(1の時は省略できる)。 =MID (文字列,開始位置,文字数) :文字列の指定した位置から指定した文字数だけ取り出す。 =SEARCH(検索文字列,対象,開始位置) 文字列が開始位置から何番目にあるかを返します 英字の大文字と小文字を区別できませんが、ワイルドカード文字を使用できます。 =FIND(検索文字列,対象,開始位置) 文字列が開始位置から何番目にあるかを返します 英字の大文字と小文字を区別できる代わりに、ワイルドカード文字を使用することができません。 選択したフォルダ内のファイル一覧を取得するマクロ Sub ファイルリスト() Dim filename As String ファイル名 Dim DrvDir As String フォルダパス Dim rw As Long 行カウンタ Dim ShellApp As Object ShellApp Dim myFolder As Object フォルダ名 Set ShellApp = CreateObject("Shell.Application") Set myFolder = ShellApp.BrowseForFolder(0, "フォルダ選択", 1) If myFolder Is Nothing Then Exit Sub DrvDir = myFolder.items.Item.Path "\" フォルダパスをセットする With Worksheets("Sheet1") .Range("A2 A65536").ClearContents 表示用のA列をクリア rw = 1 フォルダを検索してファイルとフォルダを特定する filename = Dir(DrvDir "*.*", vbDirectory) While filename "" 順にSheet1に書き出していく rw = rw + 1 .Range("A" rw) = filename filename = Dir(, vbDirectory) Wend End With End Sub ブックの共有操作のマクロ Sub ブックの共有を解除() ブックの共有を解除 Application.DisplayAlerts = False If ActiveWorkbook.MultiUserEditing Then _ ActiveWorkbook.ExclusiveAccess End Sub Sub ブックの共有をする() ブックの共有をする Application.DisplayAlerts = False ActiveWorkbook.KeepChangeHistory = True ActiveWorkbook.SaveAs Filename =ActiveWorkbook.FullName, _ AccessMode =xlShared End Sub メッセージボックスのアイコン vbCritical 警告メッセージ アイコン vbQuestion 問い合わせメッセージ アイコン vbExclamation 注意メッセージ アイコン vbInformation 情報メッセージ アイコン セル範囲指定で絶対的な座標で指定する INDIRECT("A1 A100")) このように設定すると、行が削除されてもA100は変化しない メッセージボックスで改行する MsgBox "これは" vbCrLf "ペンデス" ステータスバーに表示するマクロ Application.StatusBar = "リスト取得中です...(現在 " rw - 3 "件)" 実行中の自動計算をオフにするマクロ Application.Calculation = xlCalculationManual オンに戻すには以下のマクロ Application.Calculation = xlCalculationAutomatic 実行中の画面の更新を無効にする Application.ScreenUpdating = False 有効にするには、FalseをTrueです 指定した文字列が含まれる行以外を削除するマクロ Sub 行削除() Dim Rwe As Long Dim R As Long Dim delname As String delname = InputBox("検索対象を入力してください", "検索") If delname = "" Then MsgBox "検索を中断します", vbInformation, "検索" End End If Rwe = Range("B" 65536).End(xlUp).Row For R = Rwe To 1 Step -1 To 1では、1行目から検索します If Application.CountIf(Rows(R), "*" delname "*") = 0 Then =0 を 0にすると、検索対象がある行を削除します Rows(R).Delete End If Next MsgBox delname " 以外を除去しました", vbInformation, "検索" End Sub 24時間を越える場合のマクロでの記述 Sub 24over() RT = Int(Range("A1") * 24) " " Format(Range("A1"), "nn ss") MsgBox "経過時間は" RT "です。" End Sub アクティブシートの名前を変更するマクロ ActiveSheet.Name = シート名 アクティブブックのシートをコピーするマクロ Sheets("シート名").Copy シート4の後に追加コピー Sheets("シート名").Copy Before =Sheets(4) ワークシートを別のBOOKへ保存するマクロ あらかじめ、Bookと同じディレクトリに書庫というフォルダを作成しておいてください。 Sub 書庫へ保存() yesno = MsgBox("シートを保存します よろしいですか?", vbYesNo + vbQuestion, "進捗度表") If yesno = vbNo Then End End If wpath = ThisWorkbook.Path "\" パスを設定する sheetname = ActiveWorkbook.ActiveSheet.Name シート名を取得する datenow = Format(Now, "yyyymmdd") 日時を設定 savename = wpath datenow "_" sheetname ".xls" ファイル名設定 savename_msg = datenow "_" sheetname ".xls" 表示用ファイル名設定 Sheets(sheetname).Copy シートを新規ブックへコピー ActiveWorkbook.SaveAs Filename =savename 新規ブックを保存する ActiveWorkbook.Close 新規ブックを閉じる Application.DisplayAlerts = False 警告メッセージオフ Worksheets(sheetname).Delete Application.DisplayAlerts = True 警告メッセージオン MsgBox savename_msg vbCrLf "書庫へ保存しました", vbInformation, "シート保存" End Sub 「はい」「いいえ」ダイアログを表示するマクロ Sub 問い合わせ() yesno = MsgBox("シートを保存します よろしいですか?", vbYesNo + vbQuestion, "問い合わせ") If yesno = vbNo Then End End If End Sub 複数条件のカウント SUMPRODUCT関数 その2 =SUMPRODUCT((A1 A10= 初稿 *(MONTH(B1 B10)=3)*(ISNUMBER(FIND("出版",C1 C10))))) A1 A10が初稿で、B1 B10が3月で、C1 C10の文字列に”出版”という文字を含んでいるならカウントする (解説) ISNUMBER(セル番地または計算式) 参照しているセルが数値かどうか調べる。 数値なら TRUE (1) 数値でないなら FALSE (0) FIND(検索文字列,対象,開始位置) 参照しているセルの検索文字列の位置を調べる 含まれない場合は#VALUEとなる。 複数条件のカウント SUMPRODUCT関数 =SUMPRODUCT((A1 A10= 初稿 )*(MONTH(B1 B10)=3)) A1 A10が初稿でB1 B10が3月ならカウントする シリアル値から日付データ「年」「月」「日」を取り出す =YEAR(シリアル値) =MONTH(シリアル値) =DAY(シリアル値) 範囲内の最大値、最小値を求める 範囲内の最大値 =MAX(範囲) 範囲内の最小値 =MIN(範囲) 例) =MAX(A1 A5) =MIN(B1 B5) =MAX(A1 A5)-MIN(B1 B5) BOOKを開いたら、マクロを自動で実行する Sub Auto_Open() MsgBox "自動です" ここに必要な処理を記述します End Sub ラベルへジャンプするマクロ GoTo ラベル ラベル 例) Sub goto001() If ActiveCell.Value = True Then GoTo msg1 End If End msg1 MsgBox "Trueですよ" End Sub アクティブセルの位置を調べるマクロ 行位置 ActiveCell.Row 列位置 ActiveCell.Column シートをアクティブにするマクロ Worksheets("Sheet1").Activate ワークブックを開くマクロ Workbooks.Open Filename =ThisWorkbook.Path "ファイル名.xls" アクティブセルの内容を取得するマクロ bn = ActiveCell.Value 指定したセルに値を代入するマクロ A5に1を代入 Cells(5,1).Value=1 指定範囲内のセルに値を代入するマクロ A1 C5の範囲に1を代入 Range("a1 c5").Value=1 シート名の一覧を表示するマクロ Sub ListSheetsName() Dim objSheet As Object Dim intLoop As Integer intLoop = 1 For Each objSheet In ActiveWorkbook.Sheets Cells(intLoop, 1).Value = objSheet.Name intLoop = intLoop + 1 Next End Sub (補足) Cells(intLoop, 1).Value = objSheet.Name を Cells(intLoop, 1).Value = objSheet.Range("A1") にすると、参照シート内のA1の内容を持ってこれる。 セルにアクティブシート名を表示する =MID(CELL("filename"),FIND("]",CELL("filename"))+1,31) 重複データを削除する (A1セルにフィールド見出し、A2 A10セルに9個のデータが入力されているときに、重複データを削除した新たなリストをC列に作成する例) メニュー[データ]-[フィルタ]-[フィルタオプションの設定]をクリック ↓ [フィルタオプションの設定]ダイアログで [抽出先]欄で[指定した範囲]オプションボタンをOnに [リスト範囲]欄で「A1 A10」セルを [抽出範囲]欄で「C1」セルを [重複するレコードは無視する]チェックボックスをOnに 設定 ↓ [フィルタオプションの設定]ダイアログ-[OK]ボタンをクリック 参考 http //pc.nikkeibp.co.jp/article/NPC/20060214/229243/ サンプル http //www29.atwiki.jp/coraljapan/?cmd=upload act=open page=EXCEL%E8%A6%9A%E3%81%88%E6%9B%B8%E3%81%8D file=%E6%8A%BD%E5%87%BA.xls 条件にあったものの合計 =SUMIF(B1 B4,"りんご",C1 C4) B1~B4のりんごに該当するもののみ、C1~C4の合計を計算 クリックした図形のセルの色を変えるマクロ 以下のマクロを、セル上の図形に登録する。 Sub iro001() Dim button As Range セル位置取得 button Set button = ActiveSheet.Shapes(Application.Caller).TopLeftCell セル位置 0,0の色を変更 With button.Offset(0, 0).Interior .ColorIndex = 10 .Pattern = xlSolid End With End Sub セルに時間を記録するマクロ A2が開始なら、B2に現在時刻を返す。 A2が終了なら、C2に現在時刻を返す。 Sub jikankiroku() If Range("A2").Value = "開始" Then Range("B2") = Now() End If If Range("A2").Value = "終了" Then Range("C2") = Now() End If End Sub =COUNTIF関数 =COUNTIF(A1 A10,"合格") A1~A10までのセルに「合格」が何個存在するか返す。 =COUNTIF(A1 A10,"合格")+COUNTIF(A1 A10,"不合格") とすると、合格+不合格の合計数が何個あるか返す。 条件付書式 セルの内容によって、書式を変化させる。 例)セルの値が”合格”なら、セルパターン=赤色、文字色=白 IF関数 =IF(A1="","",IF(A1 50,"○","×")) A1が空白なら、空白。 空白以外なら、A1 50をチェック。 50以上なら○ 50以下なら×。 セルのコピー&貼り付け セルが別のセルを指している時に そのセルを別の位置にコピーすると、移動した分だけ指していた位置まで移動してしまう。 これを移動させず、指している位置が変わらないままにするには、変えたくない行・列には「$」を前につけて、「$A$1」といった指定をする。 参考http //www.ne.jp/asahi/hishidama/home/tech/excel/cellcopy.html セル内の文字列をリスト形式で選択 1 [▼]を押して選択するためのリストを別の場所に作成。 2 ドロップダウンリストを表示させたいセルを選択して、メニューバー[データ]から[入力規則]をクリック。 3 [設定]タブの[入力値の種類]で[リスト]を選択し、[元の値]に文字カーソルを移します。 4 ドロップダウンリストの元となる、欄外に入力したデータを範囲選択する。 5 [OK]を押す。 参考http //kokoro.kir.jp/excel/nkisoku_list.html
https://w.atwiki.jp/tfcfuji/pages/52.html
EXCELですべてのシート名の一覧をマクロで作成するには下記のマクロをEXCELファイルに追加する Sub シート一覧() Dim i As Long For i = 1 To Sheets.Count Range("A" i).Value = Worksheets(i).Name Next i End Sub
https://w.atwiki.jp/restinpiece/pages/16.html
Excel⇒HTML変換表 Excel⇒HTML変換表 べた打ちでExcellを書くには.... a タグ ASPからExcelを出力する際に必要なヘッダー フォントフォントサイズ 斜体 太字 フォントの種類 フォントサイズ 高さ・幅高さ指定 幅指定 セルセルの書式のフォーマットの指定 セルの結合 セルの背景色を指定する 折り返し禁止 縮小して全体を表示 垂直表示 文字の傾き セルの文字色の変更 セルに罫線を引く 斜めに罫線を引く セルに数値をセットする パーセンテージ 出力結果 インデント 位置 下線 べた打ちでExcellを書くには.... ①基本はHTMLで書けばいける ②たまにHTMLで書けないMS独自仕様がある a タグ HTMLの a タグと同じです。 セル内の値に使用すれば文字にリンクが張られる。 ASPからExcelを出力する際に必要なヘッダー Response.ContentType = "application/vnd.ms-excel" Response.AddHeader "content-disposition","inline; filename=xxxxx.xls" フォント フォントサイズ font-size [数値]pt; 斜体 font-style italic; 太字 font-weight 700; フォントの種類 font-family "MS Pゴシック", monospace; http //www.htmq.com/style/font-family.shtml フォントサイズ font-size [数値]pt; http //www.htmq.com/style/font-size.shtml 高さ・幅 高さ指定 mso-height-source userset; 高さを指定する際にTR内のStyle内に記述し、、styleのheightで高さを指定する 幅指定 mso-width-alt 不明、幅の指定をしたときに勝手にできる。 mso-width-source userset; 幅を指定する際にテーブル内の COL 内のstyleに記述し、styleのwidthで幅を指定する セル セルの書式のフォーマットの指定 mso-number-format mso-number-format \@ テキスト形式 mso-number-format "0\.000" 3桁数値 mso-number-format \#\,\#\#0\.000 3桁カンマ区切り数値 mso-number-format "mm\/dd\/yy" 日付 mso-number-format "d\\-mmm\\-yyyy" その他日付 mso-number-format Percent セルの結合 colspanとrowspanです。HTMLのテーブルと一緒です。 セルの背景色を指定する mso-pattern auto [網掛設定]; background [色]; 網掛設定で使用できる種類。何かしら指定しないと背景色の指定ができないので注意してください。 折り返し禁止 white-space normal; http //www.htmq.com/style/white-space.shtml 縮小して全体を表示 mso-text-control shrinktofit; 垂直表示 layout-flow vertical; 文字の傾き mso-rotate [数値]; セルの文字色の変更 color [色] セルに罫線を引く 通常のstyleのボーダ指定と同じ。 (例) border .5pt solid; border 1.0pt solid; border 2.0pt double; 上下左右ごとの指定も可能 border-top 1.0pt solid ; border-right none; border-bottom 2.0pt double; border-left 4.0px solid;} 斜めに罫線を引く mso-diagonal-up .5pt solid windowtext; 左から右に上昇するからUP mso-diagonal-down .5pt solid windowtext; 左から右に下降するからDOWN セルに数値をセットする x num="(式)" 実数 出力結果 x num="111" パーセンテージ 出力結果 x num="0.15" 15% インデント mso-char-indent-count [数値] 数字に記入した数値量分インデントされる 位置 text-align [位置] 位置に記入されたところにセルの値が寄せられる left, center, rightに寄せられる。 下線 text-decoration underline; text-underline-styleを指定しない場合はデフォルトのsingleが表示される text-underline-style [線];
https://w.atwiki.jp/minoemon/pages/20.html
チャットモード切り替え FF14ではTabでチャットモード切り替えできない。 けど、テキストコマンドを使って切り替えできる。 /s Say /y Yell /sh Shout /p Party /fc FreeCompany https //jp.finalfantasyxiv.com/lodestone/character/7195419/blog/1523636
https://w.atwiki.jp/kplus/pages/136.html
ビジネスオフィス開発/Excel Tips 読み取り専用で開く Regeditを編集する手もあるが危険性が高いので、「SendTo」にショートカットを作って開くやり方がベター。 C \Users\ユーザー名\AppData\Roaming\Microsoft\Windows\SendToで、 右クリック新規作成・ショートカットに「"C \Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE" /r」を入力し ショートカット名は好みの名前で保存。 読取専用で開きたいExcelファイルを選択して右クリック・送る→ショートカット名を選択すると読取専用で開ける。 なおOffice12は2007版。それ以外のバージョンは変更する必要がある。 所有のExcel.exeが含まれるフォルダをProgramFilesフォルダから探せば分かる。 ちなみに後で分かったことだが、デスクトップにこのショートカットを置いてここに読取専用で開きたいExcelファイルをドラッグ&ドロップしてきても読取専用で開くことが出来る。どちらがベターかは個人の好み。
https://w.atwiki.jp/wiki11_mpl/pages/228.html
トップページ>pants>切り替えヒモパンツ NO.P0101 切り替えヒモパンツ http //www.m-pattern.com/catalog/pants/no.p0101.html おすすめの生地 おすすめの用途 このアイテムについてコメントしたい方で、wikiの編集が不安な方は、以下の コメントフォームからどうぞ。 ボタンもファスナー付けもなく、初心者はまずはこれから。おサルのお尻みたいな後姿もホッコリ可愛い。ほつれやすい生地を使うと、急カーブでボロボロに。 -- 名無しさん (2006-05-10 13 15 32) 初めて縫ったパンツだったけど、本当に簡単でした。ジャストサイズでしっかりめのツイルで作ったら外にもはいて行ける出来ばえになって満足です。長さを変えてハーフパンツにしてもいいかも。-- 名無しさん (2006-05-17 18 25 17) O脚の人はやめた方がいいかも。私はかなりO脚なので、隙間が目立ち悲しい着用姿に・・・ -- 名無しさん (2006-05-17 20 06 19) カーブ縫い以外はとても簡単にできます。その上シルエットも充分!夏は楽で涼しくて本当に重宝します~。お勧め。スレでも書きましたが、股下を縫う前に(※つけられなくなるから)脇にカーゴっぽいポケットをつけてます。とても便利ですよ! -- 名無しさん (2006-10-13 19 53 10) 本当に簡単に出来ますサイズの割りにかなり渡りが広くゆったりパンツですポケットは私も会ったほうがいいんじゃないかなと思う普通にお尻にパッチポケットつけました -- 名無しさん (2007-09-08 08 14 30) 名前 コメント このアイテムを作ってみての難易度はどうでしたか? 選択肢 投票 難しいので初心者には無理! (0) 難しいけれどがんばればなんとか (0) 意外と簡単 (8) 初心者にもおすすめ! (20)